﻿using System;
using System.Collections.Generic;
using System.Text;
using Evaluant.Uss.ObjectContext.Descriptors;

namespace Evaluant.Uss.Workflow
{
    public class InstanceState
    {
        public InstanceState()
        {
            modified = DateTime.UtcNow;
        }

        protected string id;

        public string Id
        {
            get { return id; }
            set { id = value; }
        }

        protected byte[] state;

        public byte[] State
        {
            get { return state; }
            set { state = value; }
        }

        protected int unlocked;

        public int Unlocked
        {
            get { return unlocked; }
            set { unlocked = value; }
        }

        protected int blocked;

        public int Blocked
        {
            get { return blocked; }
            set { blocked = value; }
        }

        protected string info;

        public string Info
        {
            get { return info; }
            set { info = value; }
        }

        protected DateTime? modified;

        public DateTime? Modified
        {
            get { return modified; }
            set { modified = value; }
        }

        protected Guid ownerId;

        public Guid OwnerId
        {
            get { return ownerId; }
            set { ownerId = value; }
        }

        protected DateTime? ownedUntil;

        public DateTime? OwnedUntil
        {
            get { return ownedUntil; }
            set { ownedUntil = value; }
        }

        protected DateTime? nextTimer;

        public DateTime? NextTimer
        {
            get { return nextTimer; }
            set { nextTimer = value; }
        }

    }
}
